package com.cg.design.graphicdesignpattern.composite;

/**
 * 表示文件的类，是Entry类的子类
 *
 * @program: LeetCode->File
 * @description: 表示文件的类，是Entry类的子类
 * @author: cg
 * @create: 2022-03-25 18:34
 **/
public class File extends Entry {

    /**
     * 文件名
     */
    private final String name;
    /**
     * 文件大小
     */
    private final int size;

    public File(String name, int size) {
        this.name = name;
        this.size = size;
    }

    @Override
    public String getName() {
        return name;
    }

    @Override
    public int getSize() {
        return size;
    }

    @Override
    public void printList(String prefix) {
        // this会自动调用toString方法
        // prefix + "/" + this
        // prefix + "/" + this.toString()
        // prefix + "/" + toString()
        // 以上三个是等价的
        System.out.println(prefix + "/" + this);
    }
}
